package pl.edu.pb.wi.pwnography.model.form;

import java.util.ArrayList;
import java.util.List;

import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.NotEmpty;
import org.hibernate.validator.constraints.Range;

import pl.edu.pb.wi.pwnography.modules.KNearestNeighbor;

public class ClassificationAllForm extends MasterForm {
    @Range(min = 2, message = "Wartość musi być większa lub równa 2.")
    private int kneighbors;
    @NotNull(message = "Wartość nie może być pusta.")
    private KNearestNeighbor.METRIC metric;
    @NotEmpty(message = "Uzupełnij pole.")
    private String attributeValues;
    private List<String> excludedColumns;

    public ClassificationAllForm() {
	excludedColumns = new ArrayList<String>();
    }

    public List<String> getExcludedColumns() {
	return excludedColumns;
    }

    public void setExcludedColumns(String excludedColumns) {
	this.excludedColumns.add(excludedColumns);
    }

    public void setExcludedColumns(List<String> excludedColumns) {
	this.excludedColumns = excludedColumns;
    }

    public int getKneighbors() {
	return kneighbors;
    }

    public void setKneighbors(int kneighbors) {
	this.kneighbors = kneighbors;
    }

    public KNearestNeighbor.METRIC getMetric() {
	return metric;
    }

    public void setMetric(KNearestNeighbor.METRIC metric) {
	this.metric = metric;
    }

    public String getAttributeValues() {
	return attributeValues;
    }

    public void setAttributeValues(String attributeValues) {
	this.attributeValues = attributeValues;
    }

}
